--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Node / ReticulumProjects / MeshChatX.git / files / tests / frontend / interfaceDiscoveryUtils.test.js
Displaying Raw • Download
tests/frontend/interfaceDiscoveryUtils.test.js 059d2cbdc100fcb9dd6f7749056a8ca676ab3eba (059d2cbd) Text, 1.06 KB
Tff7b72import Tb4b4b4{ Te6edf3describeTb4b4b4, Te6edf3itTb4b4b4, Te6edf3expect Tb4b4b4} Tff7b72from Ta5d6ff"vitest"Tb4b4b4;
Tff7b72import Tb4b4b4{ Te6edf3numOrNull Tb4b4b4} Tff7b72from Ta5d6ff"../../meshchatx/src/frontend/js/interfaceDiscoveryUtils.js"Tb4b4b4;
Te6edf3describeTb4b4b4(Ta5d6ff"interfaceDiscoveryUtils numOrNull"Tb4b4b4, Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Te6edf3itTb4b4b4(Ta5d6ff"treats empty and invalid as null"Tb4b4b4, Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Te6edf3expectTb4b4b4(Te6edf3numOrNullTb4b4b4(Tff7b72nullTb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Tff7b72nullTb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3numOrNullTb4b4b4(Tff7b72undefinedTb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Tff7b72nullTb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3numOrNullTb4b4b4(Ta5d6ff""Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Tff7b72nullTb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3numOrNullTb4b4b4(Ta5d6ff" "Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Tff7b72nullTb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3numOrNullTb4b4b4(Tffa657NumberTb4b4b4.Tff7b72NaNTb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Tff7b72nullTb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3numOrNullTb4b4b4(Tffa657NumberTb4b4b4.Te6edf3POSITIVE_INFINITYTb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Tff7b72nullTb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3numOrNullTb4b4b4(Ta5d6ff"not-a-number"Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Tff7b72nullTb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3itTb4b4b4(Ta5d6ff"accepts finite numbers and numeric strings"Tb4b4b4, Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Te6edf3expectTb4b4b4(Te6edf3numOrNullTb4b4b4(T79c0ff0Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(T79c0ff0Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3numOrNullTb4b4b4(Tff7b72-T79c0ff12.5Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Tff7b72-T79c0ff12.5Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3numOrNullTb4b4b4(Ta5d6ff"0"Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(T79c0ff0Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3numOrNullTb4b4b4(Ta5d6ff" 42.25 "Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(T79c0ff42.25Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3itTb4b4b4(Ta5d6ff"fuzz: random finite doubles round-trip"Tb4b4b4, Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72for Tb4b4b4(Tff7b72let Te6edf3i Tff7b72= T79c0ff0Tb4b4b4; Te6edf3i Tff7b72< T79c0ff200Tb4b4b4; Te6edf3iTff7b72++Tb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3x Tff7b72= Tb4b4b4(Tffa657MathTb4b4b4.Te6edf3randomTb4b4b4(Tb4b4b4) Tff7b72- T79c0ff0.5Tb4b4b4) Tff7b72* T79c0ff360Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3numOrNullTb4b4b4(Te6edf3xTb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeCloseToTb4b4b4(Te6edf3xTb4b4b4, T79c0ff10Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────